/**
 * 主要入口类
 */
public class Main {
    public static void main(String[] args) {
        /**
         * 1、有一家超市，出售苹果和草莓。其中苹果 8 元/斤，草莓 13 元/斤。
         * 现在顾客 A 在超市购买了若干斤苹果和草莓，需要计算一共多少钱？
         * 请编写函数，对于 A 购买的水果斤数 (水果斤数为大于等于 0 的整数)，计算并返回所购买商品的总价。
         */

        //定义苹果信息，8元1斤
        Fruit apple = new Fruit("apple","苹果",8.0,1.0);
        //定义草莓信息，13元1斤
        Fruit strawberry = new Fruit("strawberry","草莓",13.0,1.0);
        //定义超市信息
        SuperMarket superMarket = new SuperMarket("大润发超市");
        //超市上架苹果
        superMarket.putFruit(apple);
        //超市上架草莓
        superMarket.putFruit(strawberry);

        //定义A顾客信息
        Customer customerA = new Customer("A","A");

        //购买1斤苹果
        superMarket.buyFruit(customerA,"苹果",1);
        //购买2斤草莓
        superMarket.buyFruit(customerA,"草莓",2);
        //输出购买水果的订单总价格信息
        superMarket.outputOrder(customerA);


        /**
         * 2、超市增加了一种水果芒果，其定价为 20 元/斤。
         * 现在顾客 B 在超市购买了若干斤苹果、 草莓和芒果，需计算一共需要多少钱？
         * 请编写函数，对于 B 购买的水果斤数 (水果斤数为大于等于 0 的整数)，计算并返回所购买商品的总价。
         */
        //定义芒果信息，20元1斤
        Fruit mango = new Fruit("mango","芒果",20.0,1.0);
        //超市上架芒果
        superMarket.putFruit(mango);
        //定义顾客B信息
        Customer customerB = new Customer("B","B");
        //购买苹果3斤
        superMarket.buyFruit(customerB,"苹果",3);
        //购买草莓4斤
        superMarket.buyFruit(customerB,"草莓",4);
        //购买芒果5斤
        superMarket.buyFruit(customerB,"芒果",5);
        //输入订单价格信息
        superMarket.outputOrder(customerB);

        /**
         * 3、超市做促销活动，草莓限时打 8 折。
         * 现在顾客 C 在超市购买了若干斤苹果、 草莓和芒果，需计算一共需要多少钱？
         * 请编写函数，对于 C 购买的水果斤数 (水果斤数为大于等于 0 的整数)，计算并返回所购买商品的总价。
         */

        //定义草莓信息，13元1斤,打8折
        Fruit strawberry2 = new Fruit("strawberry","草莓",13.0,0.8);
        //下架不打折的草莓
        superMarket.pullFruit(strawberry);
        //上架打折的草莓
        superMarket.putFruit(strawberry2);


        //定义顾客C信息
        Customer customerC = new Customer("C","C");
        //购买苹果3斤
        superMarket.buyFruit(customerC,"苹果",3);
        //购买草莓4斤
        superMarket.buyFruit(customerC,"草莓",4);
        //购买芒果5斤
        superMarket.buyFruit(customerC,"芒果",5);
        //输入订单价格信息
        superMarket.outputOrder(customerC);


        /**
         * 4、促销活动效果明显，超市继续加大促销力度，购物满 100 减 10 块。
         * 现在顾客 D 在超市购买了若干斤苹果、 草莓和芒果，需计算一共需要多少钱？
         * 请编写函数，对于 D 购买的水果斤数 (水果斤数为大于等于 0 的整数)，计算并返回所购买商品的总价。
         */
        //定义顾客C信息
        Customer customerD = new Customer("D","D");
        //设置超市折扣，满多少
        superMarket.setSrcPrice(100.0);
        //设置超市折扣，减多少
        superMarket.setMinusPrice(10.0);
        //购买苹果3斤
        superMarket.buyFruit(customerD,"苹果",3);
        //购买草莓4斤
        superMarket.buyFruit(customerD,"草莓",4);
        //购买芒果5斤
        superMarket.buyFruit(customerD,"芒果",5);
        //输入订单价格信息
        superMarket.outputOrder(customerD);

    }



}